 {
        
       cc.Class({
            extends: cc.Component,
            properties: {
                labFanNum: cc.Label,
                standTilePrefab: {
                    default: null,
                    type: cc.Prefab
                },
                labTip: cc.Label
            },
            onLoad: function () {
                this.layout = Global.utils.searchNode(this.node, "layout"), this.perFanNum = 5,
                    this.fanSum = 0, this.win_tiles = [];
                var e = Global.tableModel.getPlayerModel(Global.config.SEAT_DOWN);
                e.isWin() || (e = Global.tableModel.getPlayerModel(Global.config.SEAT_UP)), this.winnerPlayerModel = e,
                    this.seatIdLoc = Global.tableModel.toLocalSeatIndex(this.winnerPlayerModel.getSeatId());
                for (var t = this.winnerPlayerModel.getHuTiles(), n = {}, o = this.winnerPlayerModel.getStandup_tiles().concat(t), i = 0; i < o.length; i++) {
                    var a = o[i];
                    n[a] || (n[a] = 1, this.win_tiles.push(a));
                }
                console.log("LuckyTiles win_tiles:", this.win_tiles), Global.notificationCenter.emit(Global.eventName.GAME_REFRESH_STAND_TILE),
                    Global.notificationCenter.on(Global.eventName.MSG_DES_LUCKY_TILES, this.desLuckyFlower.bind(this), this);
            },
            start: function () {
                this.secondLimit = 5, this.labTip.string = "每中一花加" + this.perFanNum + Global.utils.getUnit() + "(" + this.secondLimit + "s)",
                    this.schedule(function () {
                        this.secondLimit--, this.secondLimit < 0 ? this.labTip.string = "每中一花加" + this.perFanNum + Global.utils.getUnit() : this.labTip.string = "每中一花加" + this.perFanNum + Global.utils.getUnit() + "(" + this.secondLimit + "s)";
                    }.bind(this), 1), this.showAnim();
            },
            showAnim: function () {
                console.log("showAnim");
                var e = 0, t = function () {
                    var t = this.layout.children[e];
                    if (t) {
                        var n = t.getComponent("NodeLuckyStandTileController");
                        n && n.playFanPaiAnim();
                    }
                    e++;
                }.bind(this), n = 2 / this.layout.children.length - .2, o = n > 0 ? n : .2;
                this.node.runAction(cc.sequence(cc.callFunc(t), cc.delayTime(o), cc.callFunc(t), cc.delayTime(o), cc.callFunc(t), cc.delayTime(o), cc.callFunc(t), cc.delayTime(o), cc.callFunc(t), cc.delayTime(o)));
            },
            onDestroy: function () {
                Global.notificationCenter.offAll(this);
            },
            bindData: function (e) {
                var t = e.luckTiles || [];
                this.luckTiles = t || [];
                for (var n = t.length, o = [], i = 0; i < n; i++) {
                    var a = cc.instantiate(this.standTilePrefab), r = a.getComponent("NodeLuckyStandTileController"),
                        s = t[i];
                    r && r.updateTile(s), this.layout && this.layout.addChild(a), this.checkIsBingo(s) && (r && r.setIsShine(!0),
                        this.fanSum += this.perFanNum, o.push(s));
                }
                console.log("luckyTileValueArr :", o), Global.notificationCenter.emit(Global.eventName.MSG_LIEDOWN_SETYELLOW, {
                    luckyTileValueArr: o,
                    seatIdLoc: this.seatIdLoc
                }), this.labFanNum.string = "+" + this.fanSum;
            },
            checkIsBingo: function (e) {
                var t = !1;
                if (!this.win_tiles) return !1;
                for (var n = 0; n < this.win_tiles.length; n++) if (e == this.win_tiles[n]) {
                    t = !0;
                    break;
                }
                return t;
            },
            desLuckyFlower: function () {
                this.node.destroy();
            },
            isInLuckyTiles: function (e, t) {
                for (var n = !1, o = 0; o < this.luckTiles.length; o++) if (e == this.luckTiles[o] && t == this.seatIdLoc) {
                    n = !0;
                    break;
                }
                return n;
            }
        })
    }